home *** CD-ROM | disk | FTP | other *** search
Text File | 1990-06-08 | 2.9 KB | 78 lines | [TEXT/GEOL] |
- Item 1423343 5-June-90 04:56PDT
-
- From: CHADWICK1 Attain, Dan Chadwick,PRT
-
- To: D4695 Skywalker Sys, Scott Collins,PRT
- MOOF Rollin, Keith A
- MACAPP.TECH$ MacApp Technical
- MACDTS Macintosh Developer Tech Supt
-
- Sub: More Focus Fixing
-
- Hi,
-
- I too, am having trouble with the changes made to Focus in 2.0 Final. The
- solution proposed by Scott Collins partially fixed my problems. In my
- application I have a collection of overlaping views of the same data, only one
- of which is visible at a time. I use Show to switch from one view to another.
- (This is nice for performance and human interface reasons.) I also need to
- hide, rather than dim, certain buttons sometimes.
-
- Therefore, my ideal solution would:
-
- 1. Let me show/hide a view & its subviews by using Show.
- 2. Visually activate & deactivate the scroll bars of only the views that are
- actually shown.
- 3. Only draw & hit test the controls that are shown & in a shown superview.
-
-
- Mr. Collin's fix addresses 3. I gave up on 1 and use SetCMgrVisibility instead
- (hassle). For 2, I suggest:
-
- procedure TSScrollBar.Activate (entering: BOOLEAN);
- OVERRIDE;
-
- procedure SetScrollBar;
- …
-
- begin
- if fCMgrControl <> nil then begin
- if Focus & fSuperView.IsShown then begin
- { fSuperView.IsShown assumes self.fShown - rash?}
- SetScrollBar;
- end
- else begin
- SetCMgrVisibility(entering);
- end;
- end;
- {• WhileFocused(SetScrollBar, Focus); DC 6/1/90 •}
- end;
-
- This will prevent scroll bars which are not "shown" from being drawn during
- duing activate and deactivate. I would have prefered fShown to be supported by
- TCtlMgr. I have not found any bad side effects in my appication (yet), but
- nonetheless I would welcome a general solution from a source more knowledgeable
- than myself.
-
- There are other problems which still have not been addressed. For instance,
- selecting a cell in a TGridView will highlight the selection even if the view
- is not shown. This is different from 2.0ß9. I have searched for the
- references to Focus in MacApp and it appears that about half of them don't
- check IsShown or IsVisible. Some substantial portion of these appear, both for
- compatibility and for my personal needs, to be bugs. In fact it is hard for me
- to see for what fShown is useful at all now; it is not used consistently.
-
- Can someone tell me why Focus no longer checks fShown in 2.0 final?
-
- Also, my application now runs considerably slower after convertion from ß9 & I
- suspect that Focus returning true more often is the culprit. (Remember, I have
- lots of unshown views.)
-
- Without fully understanding the meaning of this closing, I guess I should be,
-
- Dan Chadwick
-
-
- P.S. Please respond to Chadwick1 as I'm not a member of TECH$.
-
-